package com.example.demo_one.kotlin

import android.os.Build
import androidx.annotation.RequiresApi

@RequiresApi(Build.VERSION_CODES.VANILLA_ICE_CREAM)
fun main(args: Array<String>) {
    //  demo1()
    demo2()
}

fun demo1() {
    // 创建只读列表
    val colors = listOf("Red", "Green", "Blue")

    // 访问元素
    println("第一个颜色: ${colors[0]}")  // 输出: Red
    println("包含绿色吗? ${colors.contains("Green")}") // 输出: true

    // 尝试修改 - 会报编译错误
    //  colors.add("Yellow")   // 错误！
    // colors[0] = "Crimson" // 错误！

    // 遍历
    println("\n所有颜色:")
    colors.forEach { println("- $it") }
    colors.map { it.toUpperCase() }

    // 转换为可变列表
    val mutableColors = colors.toMutableList()
    mutableColors.add("Yellow")
    mutableColors.add("Crimson")
    println("\n所有颜色:")
    mutableColors.forEach { println("- $it") }

}


@RequiresApi(Build.VERSION_CODES.VANILLA_ICE_CREAM)
fun demo2() {
    // 创建可变列表
    val shoppingList = mutableListOf("苹果", "牛奶")

    // 添加元素
    shoppingList.add("面包")
    shoppingList.add(1, "鸡蛋") // 在索引1处插入

    // 修改元素
    shoppingList[0] = "有机苹果"

    // 删除元素
    shoppingList.remove("牛奶")
    shoppingList.removeAt(0) // 删除第一个元素
    shoppingList.removeLast()

    println("\n购物清单:")
    shoppingList.forEachIndexed { index, item ->
        println("${index + 1}. $item")
    }
}
